home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 52 / Amiga Format AFCD52 (Issue 136, May 2000).iso / -in_the_mag- / multitasking / coders / ppipc / ipc_lib_sources / read_me < prev    next >
Text File  |  2000-03-05  |  3KB  |  86 lines

  1.  
  2.                            IPC System Sources
  3.                            ==================
  4.  
  5. This directory contains the source files for creating the IPC Shared
  6. Library.
  7.  
  8. Include header files:
  9.  
  10.  
  11.     IPCStruct.h --  Header defining only the IPC structures (extracted
  12.                     from IPC.h and IPCPorts.h); avoids function prototype
  13.                     conflicts within the library sources.
  14.  
  15.     IPCAsmCalls.h   -- prototypes for direct calling of library routines
  16.                     by other routines within the library.
  17.  
  18.                         + + +
  19.  
  20.  
  21.  
  22. Source Files for the Shared Library:
  23.  
  24.     IPClib.c    --  Contains all the IPC library procedures that a user
  25.                     program will call for managing IPCPorts and
  26.                     IPCMessages.  Calls to the library invoke these
  27.                     routines directly (no assembly level interface
  28.                     required -- they use the "__asm" feature of
  29.                     Lattice 5.0).
  30.  
  31.     LoadIPCPort.c   -- An alternative to GetIPCPort (which it uses
  32.                     internally) that sends a message to a "Port Broker"
  33.                     if the requested port does not currently have a server;
  34.                     if the broker cannot find a server to satisfy the
  35.                     request (or the broker itself isn't loaded!), this call
  36.                     will return NULL.  This module is now a standard part
  37.                     of the library.
  38.  
  39.     UtilIPC.c       -- Contains two (new) utility functions that have been
  40.                     added to the IPC Library (MakeIPCId and FindIPCItem).
  41.  
  42.     LibFuncs.c  --  Standard library functions (Init, Open, Close, Expunge)
  43.                     with minor additions to handle particular IPC needs.
  44.  
  45.     LibTables.c --  Tables for library initialization.  (The library node
  46.                     structure initialization is not easy to specify in C;
  47.                     the table for that is in LibTag.a.)
  48.  
  49.     LibTag.a    --  The library RomTag structure needed for autoloading
  50.                     by OpenLibrary().  Also contains basic initialization
  51.                     data for the library node.
  52.  
  53.                         + + +
  54.  
  55. Make File:
  56.  
  57.     lmkfile     --  Lattice 5.0 Makefile for the library.  It assumes that
  58.                     all assignments and paths have been set up before it
  59.                     is invoked.
  60.  
  61. Link File:
  62.  
  63.     IPCLibrary.lnk  -- BLINK "WITH" file to create "ppipc.library" from
  64.                     the component object files (also used by lmkfile).
  65.  
  66.  
  67.                             +++++++++++++++++
  68.  
  69.  
  70. Compiling under Lattice:
  71.  
  72.     The library modules MUST all be compiled with -b0 and -v options.
  73.     (It probably would be fairly easy to make it compatible with the -y
  74.     option instead of -b0, by saving a suitable base pointer on
  75.     initialization, but I haven't experimented with that yet.)
  76.  
  77.     Application programs may of course be compiled in any mode you like.
  78.     If you are using Lattice 4.0 or later, it will be more convenient to
  79.     include IPC_proto.h (as well as IPC.h) so you can avoid any need to
  80.     link with IPC.lib (itself available in Libraries directory).
  81.  
  82.                             +++++++++++++++++
  83.                             -----------------
  84.  
  85.                                                     1989 April 18
  86.